package threadMethod;

import lombok.extern.slf4j.Slf4j;
import java.util.concurrent.TimeUnit;

/**
 * @author： pang-yun
 * @date： 2021-10-14 20:55
 * 功能目的 ：用于 打断阻塞的线程  interrupt   sleep  wait yield
 * 打断不会停止运行  只是打断标记 isInterrupt  会变成true   我们可以用词标记  当其变成true 后， 做一下善后功能 然后停止线程
 */
@Slf4j
public class InterruptTest {
    public static void main(String[] args) throws InterruptedException {
        Thread pang = new Thread(() -> {
        while (true){
            boolean interrupted = Thread.currentThread().isInterrupted();
            if (interrupted){
                log.info("线程被打断过，退出循环");
                break;
            }
        }
        }, "pang");
        pang.start();
        TimeUnit.SECONDS.sleep(1);
        log.info("interrupt.....");
        pang.interrupt();
    }
}
